
$.YSM = {};
$.YSM.apiUrl = "http://www.youshusoft.com:8080/ysmail/"; //API地址
//$.YSM.apiUrl = "http://localhost:8000/ysmail/"; //API地址
$.YSM.authKey = null;//登陆密匙
  /**
   * 登陆认证
   */
  $.YSM.ua = function(callback){
	 return this.getJSON("user/auth",callback); 
  };
  /**
   * 获取邮箱账户
   * @param callback 数据回调函数
   * @param name 指定用户名
   * @param host 指定邮箱服务器
   * @returns
   */
  $.YSM.u = function(callback,name,host){
	  return this.getJSON("user/u="+name+"&h="+host,callback); 
  };
  /**
   * 删除用户
   * @param name 要删除的用户名
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.ud = function(callback,name){
	 return this.getJSON("user/del/?u="+name,callback);
  };
  /**
   * 获取拥有的邮箱账户列表
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.ul = function(callback){
	  return this.getJSON("user/list",callback);
  };
  /**
   * 获取邮箱的所有邮件
   * @param name 邮箱账户
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.ml = function(callback,name){
	  return this.getJSON("mail/list?u="+name,callback);
  };
  /**
   * 获取邮箱的所有未读邮件
   * @param name 邮箱账户
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.mlu=function(callback,name){
	  return this.getJSON("mail/list/unread/?u="+name,callback);
  };
  /**
   * 获取邮件数
   * @param name 邮箱账户
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.mc = function(callback,name){
	  return this.getJSON("mail/count?u="+name,callback); 
  };
  /**
   * 获取未读邮件数
   * @param name 邮箱账户
   * @param callback 数据回调函数
   * @returns
   */
  $.YSM.mcu = function(callback,name){
	  return this.getJSON("mail/count/unread/?u="+name,callback); 
  };
  /**
   * API错误回调函数,注册后将检查错误码,发生错误则调用此函数
   */
  $.YSM.errCallBack = null;
  /**
   * 使用JSONP获取接口数据
   * @param path 接口地址
   * @param callback 数据回调函数
   */
  $.YSM.getJSON = function(path,callback){
	  
	  if(this.authKey)
	  {
		  //加入 认证密匙参数
		 path += (path.indexOf("?") > 0?"&":"?")+"a="+this.authKey;
	  }
	  var url = this.apiUrl+path;
	  $.ajax({
		  url:url,
		  dataType:"JSONP",
		  type:"GET",
		  success:function(data){
			  if($.YSM.errCallBack){
				  //错误检查函数被注册,检查错误码
				  if(!data || data.ret > 0){
					  $.YSM.errCallBack(data);
					  return;
				  }
			  }
			  callback(data);
		  }
		  });
  };

